perm filename N[2,BGB] blob
sn#033832 filedate 1973-04-09 generic text, type T, neo UTF8
00100 ;CRE NODE FORMATS.
00200 ;----------------------------------------------------------------;
00300 ; ;
00400 ; VERTEX/ARC NODE. POLYGON/REGION NODE. ;
00500 ; ;
00600 ; 0 CW,,CCW 0 polygon-ring. ;
00700 ; 1 ROW,,COL 1 DAD,,SON ;
00800 ; 2 TYPE,,RELOC 2 TYPE,,RELOC ;
00900 ; 3 ENDO,,EXO 3 ENDO,,EXO ;
01000 ; 4 ARC,,PED 4 ARC,,NCNT ;
01100 ; 5 CNTRST,,PGON 5 CIS,,PGON ;
01200 ; 6 NTIME,,PTIME 6 NTIME,,PTIME ;
01300 ; ;
01400 ;----------------------------------------------------------------;
01500 ; WINGED EDGE NODE. FACE NODE. ;
01600 ; ;
01700 ; 0 NCW ,,PCW 0 - ,, - ;
01800 ; 1 NCCW,,PCCW 1 DAD,, - ;
01900 ; 2 TYPE,,lngth/cntrst 2 TYPE,,RELOC ;
02000 ; 3 NFACE,,PFACE 3 NFACE,,PFACE ;
02100 ; 4 NED,,PED 4 - ,,PED ;
02200 ; 5 NVT,,PVT 5 - ,, - ;
02300 ; 6 NTIME,,PTIME 6 NTIME,,PTIME ;
02400 ; ;
02500 ;----------------------------------------------------------------;
02600 ; IMAGE NODE. LEVEL NODE. ;
02700 ; ;
02800 ; 0 image-ring. 0 level-ring. ;
02900 ; 1 - ,,SON 1 - ,,SON ;
03000 ; 2 TYPE,,RELOC 2 TYPE,,RELOC ;
03100 ; 3 NFACE,,PFACE 3 - ,, - ;
03200 ; 4 NED,,PED 4 - ,,NCNT ;
03300 ; 5 - ,, - 5 - ,, - ;
03400 ; 6 NTIME,,PTIME 6 NTIME,,PTIME ;
03500 ; ;
03600 ;----------------------------------------------------------------;
03700 ; FILM NODE. EMPTY NODE. ;
03800 ; ;
03900 ; 0 coresize 0 - ,,avail ;
04000 ; 1 - ,,SON 1 - ,, - ;
04100 ; 2 TYPE,,RELOC 2 TYPE,,RELOC ;
04200 ; 3 - ,,avail 3 - ,, - ;
04300 ; 4 blk count 4 - ,, - ;
04400 ; 5 - ,, - 5 - ,, - ;
04500 ; 6 NTIME,,PTIME 6 NTIME,,PTIME ;
04600 ; ;
04700 ;----------------------------------------------------------------;
00100 ;LINK NAMES DEFINED.
00200
00300 DEFINE LEFT $(NAM,WRD,Z){
00400 IFIDN<><Z><DEFINE NAM(A,Q)<CAR A,WRD(Q)>>
00500 IFDIF<><Z><DEFINE NAM(A,Q)<NIP A,WRD(Q)>>
00600 DEFINE NAM$.(A,Q)<DIP A,WRD(Q)>}
00700
00800 DEFINE RIGHT $(NAM,WRD,Z){
00900 IFIDN<><Z><DEFINE NAM(A,Q)<CDR A,WRD(Q)>>
01000 IFDIF<><Z><DEFINE NAM(A,Q)<NAP A,WRD(Q)>>
01100 DEFINE NAM$.(A,Q)<DAP A,WRD(Q)>}
01200
01300
01400 LEFT(CW,0)↔ RIGHT(CCW,0)
01500 LEFT(ROW,1)↔ RIGHT(COL,1)
01510 LEFT(DAD,1)↔ RIGHT(SON,1)
01600 LEFT(TYPE,2)↔ RIGHT(RELOC,2)
01700 LEFT(ENDO,3)↔ RIGHT(EXO,3)
01800 LEFT(ARC,4)↔ RIGHT(NCNT,4,N)
01900 LEFT(NGON,5)↔ RIGHT(PGON,5)
02000 LEFT(NTIME,6)↔ RIGHT(PTIME,6)
02100
02200 LEFT(NCW,0)↔ RIGHT(PCW,0)
02300 LEFT(NCCW,1)↔ RIGHT(PCCW,1)
02400 LEFT(NFACE,3)↔ RIGHT(PFACE,3)
02500 LEFT(NED,4)↔ RIGHT(PED,4)
02600 LEFT(NVT,5)↔ RIGHT(PVT,5)
02700
02800 RC←←1
02900 DEFINE CNTRST(A,Q){NIP A,5(Q)}
02901 DEFINE CNTRS.(A,Q){DIP A,5(Q)}
03000 ;-----------------------------------------------------------------
00100 ;PROPERTY-TYPE MACROS.
00200 DEFINE MARK (Q,BITS){SLACI(BITS)↔IORM(Q)2}
00300 DEFINE MARKZ(Q,BITS){SLACI(BITS)↔ANDCAM(Q)2}
00400 DEFINE TEST (Q,BITS){LAC(Q)2↔TLNN(BITS)}
00500 DEFINE TESTZ(Q,BITS){LAC(Q)2↔TLNE(BITS)}
00600
00700 ;PROPERTY-TYPE BITS.
00800 ↓VBIT←←1B17 ;VERTEX.
00900 ↓EBIT←←1B16 ;EDGE.
01000 ↓FBIT←←1B15 ;FACE.
01100
01200 ↓PBIT←←1B14 ;POLYGON.
01300 ↓LBIT←←1B13 ;LEVEL
01400 ↓IBIT←←1B12 ;IMAGE.
01500
01600 ↓FILBIT←←1B11 ;FILM.
01700 ↓HOLBIT←←1B10 ;HOLE.
01800 ↓ARCBIT←←1B9 ;ARC.
01900
02000 ↓WESBIT←←1B8 ;WEST.
02100 ↓SOUBIT←←1B7 ;SOUTH.
02200 ↓EASBIT←←1B6 ;EAST.
02300
02400 ↓NORBIT←←1B5 ;NORTH.
02500 ↓WASP←←1B4 ;WASP WAISTED EDGE.
02600 ↓TMPBIT←←1B3 ;TEMPORARY BIT.
02700
02800 ;LINK-RELOCATION BITS OF EACH NODE TYPE.
02900 VREL←←303310 ;VERTEX.
03000 EREL←←400000 ;EDGE.
03100 FREL←←023103 ;FACE.
03200 PGNREL←←333233 ;POLYGON.
03300 LVLREL←←330003 ;LEVEL.
03400 IMGREL←←333333 ;IMAGE.
03500 FILREL←←011000 ;FILM.
03600 ;-----------------------------------------------------------------
03700 $ ←← 400000
03800 NODSIZ ←← 7